系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > 脚本中心 > linux shell > 详细页面

SHELL脚本中运算符、逻辑运算以及用法

时间:2020-02-22来源:电脑系统城作者:电脑系统城

一、算数运算

1. bash中的算术运算:

可用help let查看帮助

常见的算数运算符:

+(加), -(减), *(乘), /(除), %取模(取余), **(乘方)

实现算术运算:

① let var=算术表达式

 

图片1.png

 

图片1.png

 

图片1.png

 

图片1.png

注:let运算只保留整数位

 

图片1.png

 

图片1.png

② var=$[算术表达式]

图片1.png
 

其余算数表达式同理

③ var=$((算术表达式))

图片1.png
 

其余算数表达式同理

④  var=$(expr arg1 arg2 arg3 ...)

图片1.png
 

其余算数表达式同理

⑤ declare –i var = 数值

图片1.png
 

其余算数表达式同理

⑥ echo ‘算术表达式’ | bc

图片1.png
 

其余算数表达式同理

2. 乘法符号有些场景中需要转义,如*

图片1.png
 

3. bash有内建的随机数生成器:$RANDOM(0-32767)

例如:取出0-49之间的随机数

 

图片1.png

二、赋值运算

1. 增强型赋值:

① +=

图片1.png
 

② -=

图片1.png
 

③ *=

图片1.png
 

④ /=

图片1.png
 

⑤ %=

图片1.png
 

2. 自增,自减:

① ++

图片1.png
 

② --

图片1.png
 

三、逻辑运算

1. true, false

测试命令:

 test EXPRESSION

 [ EXPRESSION ]

[[ EXPRESSION ]]

注意:EXPRESSION前后必须有空白字符

返回结果:

1为true,0为false

2. 与(&)

1 与 1 = 1

1 与 0 = 0

0 与 1 = 0

0 与 0 = 0

例如:12与24

12转换成二进制:01100

24转换成二进制:11000

与的结果是:01000

转换成十进制是:8

图片1.png
 

3. 或(|)

1 或 1 = 1

1 或 0 = 1

0 或 1 = 1

0 或 0 = 0

依然是上例,12或24

12转换成二进制:01100

24转换成二进制:11000

或的结果是:11100

转换成十进制是:28

图片1.png
 

4. 非(!)

! 1 = 0 ! true

! 0 = 1 ! false

5. 短路运算

① 短路与(&&)

第一个为0,结果必定为0即:

命令1 && 命令2

命令1为假,不执行命令2

图片1.png
 

第一个为1,第二个必须要参与运算

命令1 && 命令2

命令1为真,执行命令2

图片1.png
 

② 短路或(||)

第一个为1,结果必定为1

命令1 || 命令2

命令1为真,不执行命令2

图片1.png
 

第一个为0,第二个必须要参与运算

命令1 || 命令2

命令1为假,执行命令2

图片1.png
 

6. 异或(^)

异或的两个值,相同为假(0),不同为真(1)

例如:12异或24

12转换成二进制:01100

24转换成二进制:11000

12异或的结果:10100

转换成十进制是:20

图片1.png
 

分享到:

相关信息

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载

484
QQ客服
联系QQ客服
QQ客服:602729135客服时间:9:30--22:00
QQ群聊
加入QQ群聊
咨询群QQ:908212918客服时间:9:30--22:00
  • 1/27
  • 2/27
  • 3/27
  • 4/27
  • 5/27
  • 6/27
  • 7/27
  • 8/27
  • 9/27
  • 10/27
  • 11/27
  • 12/27
  • 13/27
  • 14/27
  • 15/27
  • 16/27
  • 17/27
  • 18/27
  • 19/27
  • 20/27
  • 21/27
  • 22/27
  • 23/27
  • 24/27
  • 25/27
  • 26/27
  • 27/27